﻿#Requires AutoHotkey v2.0

class ShellRun {
    static RunWaitOne(command) {
        shell := ComObject("WScript.Shell")
        ; 通过 cmd.exe 执行单条命令
        exec := shell.Exec(A_ComSpec " /C " command)
        ; 读取并返回命令的输出
        return exec.StdOut.ReadAll()
    }

    static RunWaitMany(commands) {
        shell := ComObject("WScript.Shell")
        ; 打开 cmd.exe 禁用命令回显
        exec := shell.Exec(A_ComSpec " /Q /K echo off")
        ; 发送并执行命令, 使用新行分隔
        exec.StdIn.WriteLine(commands "`nexit")  ; 总是在最后退出!
        ; 读取并返回所有命令的输出
        return exec.StdOut.ReadAll()
    }
}